$(function () {
  // 一级分类 
  // 1- 静态页面布局
  // 2- 首页数据渲染 
  // 3- 分页 

  // 首页数据渲染
  var currentPage = 1;
  var pageSize = 3;
  function render() {
    $.ajax({
      type: "get",
      url: "/category/queryTopCategoryPaging",
      data: {
        page: currentPage,
        pageSize: pageSize,
      },
      dataType: "json",
      success: function (res) {
        console.log(res);
        var str = template('tmp', res);
        $('tbody').html(str);
        setPage(res.total);
      }
    })
  };
  render();

  // 分页
  function setPage(total) {
    // 使用插件生成分页标签
    $("#paginator").bootstrapPaginator({
      bootstrapMajorVersion: 3, //默认是2，如果是bootstrap3版本，这个参数必填
      currentPage: currentPage,//当前页
      totalPages: Math.ceil(total / pageSize), //总页数
      onPageClicked: function (event, originalEvent, type, page) {
        //为按钮绑定点击事件 page:当前点击的按钮值
        console.log(page);
        // 改变当前页取值 页面重新渲染
        currentPage = page;
        render();
      }
    })
  };

  // 添加一级分类
  // 4-2 表单非空校验 
  // 4-3 添加一级分类
  // 1- 点击添加按钮，在表单数据校验通过的情况下，获取数据，发送给后台进行添加
  // 2- 后台添加完成后，前端重新渲染页面，隐藏模态框 ， 重置表单 ....

  //使用表单校验插件
  $('.form-add').bootstrapValidator({
    //1. 指定不校验的类型，默认为[':disabled', ':hidden', ':not(:visible)'],可以不设置
    excluded: [':disabled', ':hidden', ':not(:visible)'],

    //2. 指定校验时的图标显示，默认是bootstrap风格
    feedbackIcons: {
      valid: 'glyphicon glyphicon-ok',
      invalid: 'glyphicon glyphicon-remove',
      validating: 'glyphicon glyphicon-refresh'
    },

    //3. 指定校验字段
    fields: {
      //校验用户名，对应name表单的name属性
      categoryName: {
        validators: {
          //不能为空
          notEmpty: {
            message: '请输入一级分类名称'
          },
        }
      },
    }
  });
  // 验证成功后提交表单 success.form.bv
  $(".form-add").on('success.form.bv', function (e) {
    e.preventDefault();
    //使用ajax提交逻辑
    $.ajax({
      type: "post",
      url: "/category/addTopCategory",
      data: $('.form-add').serialize(),
      dataType: "json",
      success: function (res) {
        console.log(res);
        //隐藏模态框
        $('.one-modal').modal('hide');
        //页面重新渲染
        render();

        var validator = $(".form-add").data('bootstrapValidator');  //获取表单校验实例
        //使用表单校验实例可以调用一些常用的方法。
        validator.resetForm(); // 重置表单样式
        $(".form-add")[0].reset(); //重置表单内容
      }
    });
  });
})